1. 值 0b01001010 的十进制和十六进制表示形式是什么?
  2. 值 389 的二进制和十六进制表示是什么?
  3. 作为一种五臂生物,海星莎莉更喜欢使用以 5 为基数的数字系统来表示数字。如果 Sally 给出以 5 为基数的数字 1423,那么等价的十进制值是多少?
  4. 抢先体验交互式数字转换问题

参考答案

如果您的浏览器支持隐藏解决方案,请单击此处显示它们。

  1. (0b01001010)2 的十进制表示是:

    (0 * 27)    +    (1 * 26)    +    (0 * 25)    +    (0 * 24)    +    (1 * 23)    +    (0 * 22)    + (1 * 21)    +    (0 * 20) =    0 + 64 + 0 + 0 + 8 + 0 + 2 + 0    =    74

    十六进制表示是:

    0100 1010
      4    A  ->  0x4A
  1. 将(389)10转化为二进制…​

    使用2的幂整除:

    • 256 整除 389, 所以 d8 比特位为 1. 余数为 389 - 256 = 133.

    • 128 整除 133, 所以 d7 比特位为 1. 余数为 133 - 128 = 5.

    • 64 不能整除 5, 所以 d6 比特位为0.

    • 32 不能整除 5, 所以 d5 比特位为 0.

    • 16 不能整除 5, 所以 d4 比特位为 0.

    • 8 不能整除 5, 所以 d3 比特位为 0.

    • 4 整除 5, 所以 d2 比特位为 1. 余数为 5 - 4 = 1. (注意, 原版书籍这里需要修正)

    • 2 不能整除 1, 所以 d1 比特位为 0.

    • 1 整除 1, 所以 d0 比特位为 1. 余数为 1 - 1 = 0.

      因此,十进制数 389 转化为二进制数是 0b110000101.


    Using repeated division:

    • 389 奇数, 所以 d0 比特位为 1.

    • 389 / 2 = 194, 偶数, 所以 d1 比特位为 0.

    • 194 / 2 = 97, 奇数, 所以 d2 比特位为 1.

    • 97 / 2 = 48, 偶数, 所以 d3 比特位为 0.

    • 48 / 2 = 24, 偶数, 所以 d4 比特位为 0.

    • 24 / 2 = 12, 偶数, 所以 d5 比特位为 0.

    • 12 / 2 = 6, 偶数, 所以 d6 比特位为 0.

    • 6 / 2 = 3, 奇数, 所以 d7 比特位为 1.

    • 3 / 2 = 1, 奇数, 所以 d8 比特位为 1.

    • 1 / 2 = 0, 所以九位或九位以上的数字都是 0

      因此,十进制数 389 转化为二进制数是 0b110000101.

      转化为十六进制:

        0001 1000 0101
          1    8    5  ->  0x185
  1. 5进制的 (1423)5转化为十进制是多少:

    (1 * 53)    +    (4 * 52)    +    (2 * 51)    +    (3 * 50)  =    125 + 100 + 10 + 3    =    238